home *** CD-ROM | disk | FTP | other *** search
/ PC World 2007 July & August / PCWorld_2007-07-08_cd.bin / v cisle / multiav / Multi_AV.exe / SophosWin9x.kix < prev    next >
Text File  |  2007-05-09  |  4KB  |  160 lines

  1. ;
  2. ; 05-09-2007 // v2.00
  3. ;
  4. SETCONSOLE("hide")
  5. $ProcMode1=left($ProcMode,1)
  6. SELECT
  7.   CASE $ProcMode1="R"
  8.     $MalwareProcMode=' -di -removef '
  9.   CASE $ProcMode1="D"
  10.     $MalwareProcMode='-ndi '
  11. ENDSELECT
  12. $CMDLine1="-me -dn -nk -f -did -dipe -all -sc -rs -dn -mime -cmz -noc -archive -cab -xml -iscab -base64 -gzip"
  13. $CMDLine=$MalwareProcMode+$CMDLine1
  14. $SafeMode="N"
  15. $home="c:\AV-CLS\Sophos"
  16. $procedurefile="c:\AV-CLS\killproc.txt"
  17. $SwitchFile="C:\AV-CLS\Sophos\scanCMD.txt"
  18. $drive=left($home,2)
  19. go $drive
  20. md $home
  21. md $home+"\temp"
  22. cd $home
  23. $WMICheck = ConfirmWMI()     
  24. If ($WMICheck="")=0  
  25.   Dim $objWMIServ
  26.   $objWMIServ=GetObject("winmgmts:\\.\root\CIMV2").ExecQuery("SELECT * FROM Win32_ComputerSystem", "WQL",48)
  27.   For Each $obj In $objWMIServ
  28.     $BootupState=$obj.BootupState
  29.   Next
  30.   $BootStat=$BootupState
  31.   $BootupState=left(ucase($BootupState),6)  
  32.   if ($BootupState="NORMAL")=0 $SafeMode="Y" endif
  33. Else   
  34.   $BootStat="Undetermined"
  35.   $SafeMode="U"
  36. EndIf
  37. cls
  38. If ($SafeMode="Y")=1 and exist ("*.ide")=1 goto SCAN endif
  39. If ($SafeMode="Y")=1 and exist ("*.ide")=0 
  40.   BEEP
  41.   messagebox("Sophos signature files were not found. The computer is being shutdown so you can download the needed Sophos files in Normal Mode"," Sophos Command Line Scanner ",48,15)
  42.   run "%windir%\RUNDLL32.EXE user.exe,ExitWindows"
  43.   goto END
  44. endif
  45. gosub "GetFiles"
  46. :SCAN
  47. $result=messagebox ("Do you want to run the Sophos CLS now ? "," Sophos Command Line Scanner ",36,20)
  48. SELECT
  49.   CASE ($result="6")=1
  50.     ; YES
  51.     $result=messagebox ("Do you want to scan a particular folder or location  ? "," Sophos Command Line Scanner ",36,20)
  52.     KillProcess()
  53.     gosub "CreateSwitchFile"
  54.     SELECT
  55.       CASE ($result="6")=1
  56.         ; YES
  57.         gosub "ScanLocation"
  58.       CASE ($result="7")=1
  59.         ; NO
  60.         CleanCache()
  61.         gosub "ScanDefault"
  62.     ENDSELECT
  63.   CASE ($result="7")=1
  64.     ; NO
  65.     goto END
  66.   CASE 1
  67.     ; NO
  68.     goto END
  69. ENDSELECT
  70. :END
  71. SETCONSOLE("hide")
  72. exit
  73. ;---------------------------------------------------
  74. :GetFiles
  75.   SETCONSOLE("SHOW")
  76.   SETCONSOLE("MAXIMIZE")
  77.   SETCONSOLE("FOREGROUND")
  78.   SETTITLE ("Sophos Module")
  79.   Color y+/b
  80.   cls
  81.   shell "c:\AV-CLS\wget -N http://www.sophos.com/tools/esdz.exe"
  82.   cls
  83.   shell "c:\AV-CLS\wget -N http://www.sophos.com/downloads/ide/web_ides.exe"
  84.   SETCONSOLE("hide")
  85.   del "*.ide"
  86.   shell "c:\AV-CLS\unzip -j -o esdz.exe"
  87.   shell "web_ides.exe -x"
  88. return
  89. ;---------------------------------------------------
  90. :ScanDefault
  91.   copy "sweep.exe" "t.exe"
  92.   SETCONSOLE("SHOW")
  93.   SETCONSOLE("MAXIMIZE")
  94.   SETCONSOLE("FOREGROUND")
  95.   SETTITLE ("Sophos Module")
  96.   Color y+/n
  97.   cls
  98.   shell 't.EXE *: -p="ScanReport.txt" @@$SwitchFile'
  99.   SETCONSOLE("hide")
  100.   if exist ("ScanRepo.txt")=1 
  101.     copy "ScanRepo.txt" "ScanReport.txt"
  102.     run "notepad ScanReport.txt" 
  103.     del "ScanRepo.txt"
  104.   endif
  105.   del "t.exe"
  106. return
  107. ;---------------------------------------------------
  108. :ScanLocation
  109.   copy "sweep.exe" "t.exe"
  110.   SETCONSOLE("SHOW")
  111.   SETCONSOLE("MAXIMIZE")
  112.   SETCONSOLE("FOREGROUND")
  113.   SETTITLE ("Sophos Module")
  114.   :REPEAT
  115.   Color g+/n
  116.   cls
  117.   AT  (6,18) "Please enter the target location"
  118.   color y+/b
  119.   AT  (7,18) "                                              "
  120.   AT  (8,18) "                                              "
  121.   AT  (9,18) "                                              "
  122.   AT  (8,19)
  123.   FLUSHKB
  124.   gets $location
  125.   $location=ltrim(rtrim($location))
  126.   if exist ($location)=0 
  127.     Color r+/n
  128.     AT  (10,18) "Bad Folder or location name... Please try again."
  129.     sleep 3
  130.     goto REPEAT 
  131.   endif
  132.   if len($location)>2
  133.     $objFSO=CreateObject("Scripting.FileSystemObject")
  134.     $objFolder=$objFSO.GetFolder($location)
  135.     $location=$objFolder.ShortPath
  136.   endif
  137.   Color y+/n
  138.   cls
  139.   Color g+/n
  140.   AT  (1,0)  "Scanning... "+$location
  141.   AT  (3,0) 
  142.   shell "t.EXE "+$location+' -rec -p="ScanReport.txt" @@$SwitchFile'
  143.   SETCONSOLE("hide")
  144.   if exist ("ScanRepo.txt")=1 
  145.     copy "ScanRepo.txt" "ScanReport.txt"
  146.     run "notepad ScanReport.txt" 
  147.     del "ScanRepo.txt"
  148.   endif
  149.   del "t.exe"
  150. return
  151. ;---------------------------------------------------
  152. :CreateSwitchFile
  153.   if exist ($SwitchFile)=1 del $SwitchFile endif
  154.   Open (1,$SwitchFile,1)
  155.   Close(1)
  156.   Open (1,$SwitchFile,4)
  157.   WriteLine(1,$CMDLine+@CRLF)
  158.   Close(1)
  159. Return
  160.